home *** CD-ROM | disk | FTP | other *** search
/ All for Cell Phones: Sony Ericsson / Sony-Ericsson 2004.iso / Java / Micro Mail / MicroMail.jar / MailReader.class (.txt) < prev    next >
Encoding:
Java Class File  |  2001-09-14  |  3.3 KB  |  114 lines

  1. import com.siemens.mp.io.File;
  2.  
  3. public class MailReader {
  4.    public static int tooBigNo;
  5.  
  6.    public static int downloadNewMessages(ProgressForm var0) {
  7.       int var1 = 0;
  8.       tooBigNo = 0;
  9.       Object var4 = null;
  10.       String[] var5 = null;
  11.       int[] var6 = null;
  12.       int var8 = AccountHandler.getCount();
  13.  
  14.       for(int var9 = 0; var9 < var8; ++var9) {
  15.          Globals.account = AccountHandler.getAccount(var9);
  16.          String var3 = Globals.account.accountName + Globals.fileExtension;
  17.          AccountHandler.openIDsFile(var3);
  18.          String[] var14 = AccountHandler.readIDs();
  19.          AccountHandler.closeIDsFile();
  20.          String var2 = Globals.account.accountName + Globals.tmpFileExtension;
  21.          if (Globals.account != null && Globals.account.accountActive) {
  22.             var0.setInfo(-1, 0, Globals.account.popHost, (String)null, (String)null);
  23.             boolean var10 = Globals.connectToServer(true);
  24.             if (var10) {
  25.                var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(22), (String)null);
  26.                int var11 = POP3Reader.getMessagesCount();
  27.                var0.setInfo(-1, -1, (String)null, " 0/" + var11 + " " + MicroMail.r.getText(24), (String)null);
  28.                System.gc();
  29.                if (var11 > 0) {
  30.                   var0.setInfo(var11, -1, (String)null, (String)null, (String)null);
  31.                   var5 = POP3Reader.getMessageIDs(var11);
  32.                   var6 = POP3Reader.getMessageLengths(var11);
  33.                }
  34.  
  35.                System.gc();
  36.                AccountHandler.openIDsFile(var2);
  37.  
  38.                for(int var12 = 0; var12 < var11; ++var12) {
  39.                   var0.setInfo(-1, var12, (String)null, " " + var12 + "/" + var11 + " " + MicroMail.r.getText(24), (String)null);
  40.                   if (!messageDownloaded(var14, var5[var12])) {
  41.                      if (var6[var12] <= Globals.maxMsgSize) {
  42.                         Message var7 = POP3Reader.getMessageAtOnce(var12 + 1, var6[var12]);
  43.                         MicroCache.storeMessage(1, var7, -1);
  44.                         ++var1;
  45.                         Object var16 = null;
  46.                      } else {
  47.                         ++tooBigNo;
  48.                      }
  49.                   }
  50.  
  51.                   AccountHandler.writeID(var5[var12], var12 + 1);
  52.                   if (MicroMail.getAppShutdown() || MicroMail.getEndConnection()) {
  53.                      MicroMail.printInfo(MicroMail.r.getText(23));
  54.                      break;
  55.                   }
  56.  
  57.                   System.gc();
  58.                }
  59.  
  60.                AccountHandler.closeIDsFile();
  61.                StringBuffer var10004 = (new StringBuffer(" ")).append(var11).append("/").append(var11).append(" ");
  62.                Resource var10006 = MicroMail.r;
  63.                var0.setInfo(-1, var11, (String)null, var10004.append(MicroMail.r.getText(24)).toString(), (String)null);
  64.                System.gc();
  65.                Globals.disconnectFromServer(true);
  66.                Globals.account = null;
  67.                var5 = null;
  68.                var6 = null;
  69.                Object var15 = null;
  70.  
  71.                try {
  72.                   File var10000 = Globals.file;
  73.                   File.delete(var3);
  74.                   var10000 = Globals.file;
  75.                   File.rename(var2, var3);
  76.                } catch (Exception var13) {
  77.                }
  78.  
  79.                System.gc();
  80.                var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(21), (String)null);
  81.             } else {
  82.                Resource var10007 = MicroMail.r;
  83.                var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(20) + Globals.account.accountName, (String)null);
  84.                MicroMail.printInfo(MicroMail.r.getText(20) + Globals.account.accountName);
  85.             }
  86.          } else {
  87.             MicroMail.printInfo("ACCOUNT NOT ACTIVE:" + Globals.account.accountName);
  88.          }
  89.  
  90.          if (MicroMail.getAppShutdown() || MicroMail.getEndConnection()) {
  91.             MicroMail.printInfo(MicroMail.r.getText(23));
  92.             break;
  93.          }
  94.       }
  95.  
  96.       System.gc();
  97.       return var1;
  98.    }
  99.  
  100.    protected static boolean messageDownloaded(String[] var0, String var1) {
  101.       if (var0 != null) {
  102.          int var2 = 0;
  103.  
  104.          for(int var3 = var0.length; var2 < var3; ++var2) {
  105.             if (var0[var2].equals(var1)) {
  106.                return true;
  107.             }
  108.          }
  109.       }
  110.  
  111.       return false;
  112.    }
  113. }
  114.